package com.x.client.model;

import com.x.framework.annotation.MappingColumn;
import com.x.framework.annotation.MappingTable;
import com.x.framework.model.BaseObject;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;
import java.util.Date;

@MappingTable(tableName = "CLIENT_SELECT_TEMPLATE")
public class SelectTemplate extends BaseObject {

	private static final long serialVersionUID = -1831461462776364896L;

	@MappingColumn(columnName = "TEMPLATE_ID", columnPk = true, columnLength = 32)
	private String templateId; // 订阅Id

	@MappingColumn(columnName = "TEMPLATE_CITY_ID")
	private String templateCityId; // 城市Id

	@MappingColumn(columnName = "TEMPLATE_CITY_NAME")
	private String templateCityName; // 城市名称

	@MappingColumn(columnName = "TEMPLATE_BRAND_ID")
	private String templateBrandId; // 品牌Id

	@MappingColumn(columnName = "TEMPLATE_BRAND_NAME")
	private String templateBrandName; // 品牌名称

	@MappingColumn(columnName = "TEMPLATE_SERIES_ID")
	private String templateSeriesId; // 车系Id

	@MappingColumn(columnName = "TEMPLATE_SERIES_NAME")
	private String templateSeriesName; // 车系名称

	@MappingColumn(columnName = "TEMPLATE_PRICE_FROM")
	private BigDecimal templatePriceFrom; // 起始价格

	@MappingColumn(columnName = "TEMPLATE_PRICE_TO")
	private BigDecimal templatePriceTo; // 结束价格

	@MappingColumn(columnName = "TEMPLATE_CAR_AGE_FROM")
	private Integer templateCarAgeFrom; // 起始车龄

	@MappingColumn(columnName = "TEMPLATE_CAR_AGE_TO")
	private Integer templateCarAgeTo; // 结束车龄

	@MappingColumn(columnName = "TEMPLATE_MILEAGE_FROM")
	private BigDecimal templateMileageFrom; // 起始里程

	@MappingColumn(columnName = "TEMPLATE_MILEAGE_TO")
	private BigDecimal templateMileageTo; // 结束里程

	@MappingColumn(columnName = "TEMPLATE_GEARBOX")
	private String templateGearbox; // 变速箱

	@MappingColumn(columnName = "TEMPLATE_OUT_COLOR")
	private String templateOutColor; // 外观颜色

	@MappingColumn(columnName = "TEMPLATE_CAR_TYPE_ID")
	private String templateCarTypeId; // 车身类型Id

	@MappingColumn(columnName = "TEMPLATE_CAR_TYPE_NAME")
	private String templateCarTypeName; // 车身类型名称

	@MappingColumn(columnName = "TEMPLATE_ENVIRON")
	private String templateEnviron; // 环保等级

	@MappingColumn(columnName = "TEMPLATE_CONFIG_ID")
	private String templateConfigId; // 配置Id

	@MappingColumn(columnName = "TEMPLATE_CONFIG_NAME")
	private String templateConfigName; // 配置名称

	@NotBlank(message = "用户Id不能为空")
	@MappingColumn(columnName = "USER_ID")
	private String userId; // 用户Id

	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@MappingColumn(columnName = "TEMPLATE_CREATE_TIME")
	private Date templateCreateTime; // 创建时间

	@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@MappingColumn(columnName = "TEMPLATE_UPDATE_TIME")
	private Date templateUpdateTime; // 修改时间

	public String getTemplateId() {
		return templateId;
	}

	public void setTemplateId(String templateId) {
		this.templateId = templateId;
	}

	public String getTemplateCityId() {
		return templateCityId;
	}

	public void setTemplateCityId(String templateCityId) {
		this.templateCityId = templateCityId;
	}

	public String getTemplateCityName() {
		return templateCityName;
	}

	public void setTemplateCityName(String templateCityName) {
		this.templateCityName = templateCityName;
	}

	public String getTemplateBrandId() {
		return templateBrandId;
	}

	public void setTemplateBrandId(String templateBrandId) {
		this.templateBrandId = templateBrandId;
	}

	public String getTemplateBrandName() {
		return templateBrandName;
	}

	public void setTemplateBrandName(String templateBrandName) {
		this.templateBrandName = templateBrandName;
	}

	public String getTemplateSeriesId() {
		return templateSeriesId;
	}

	public void setTemplateSeriesId(String templateSeriesId) {
		this.templateSeriesId = templateSeriesId;
	}

	public String getTemplateSeriesName() {
		return templateSeriesName;
	}

	public void setTemplateSeriesName(String templateSeriesName) {
		this.templateSeriesName = templateSeriesName;
	}

	public BigDecimal getTemplatePriceFrom() {
		return templatePriceFrom;
	}

	public void setTemplatePriceFrom(BigDecimal templatePriceFrom) {
		this.templatePriceFrom = templatePriceFrom;
	}

	public BigDecimal getTemplatePriceTo() {
		return templatePriceTo;
	}

	public void setTemplatePriceTo(BigDecimal templatePriceTo) {
		this.templatePriceTo = templatePriceTo;
	}

	public Integer getTemplateCarAgeFrom() {
		return templateCarAgeFrom;
	}

	public void setTemplateCarAgeFrom(Integer templateCarAgeFrom) {
		this.templateCarAgeFrom = templateCarAgeFrom;
	}

	public Integer getTemplateCarAgeTo() {
		return templateCarAgeTo;
	}

	public void setTemplateCarAgeTo(Integer templateCarAgeTo) {
		this.templateCarAgeTo = templateCarAgeTo;
	}

	public BigDecimal getTemplateMileageFrom() {
		return templateMileageFrom;
	}

	public void setTemplateMileageFrom(BigDecimal templateMileageFrom) {
		this.templateMileageFrom = templateMileageFrom;
	}

	public BigDecimal getTemplateMileageTo() {
		return templateMileageTo;
	}

	public void setTemplateMileageTo(BigDecimal templateMileageTo) {
		this.templateMileageTo = templateMileageTo;
	}

	public String getTemplateGearbox() {
		return templateGearbox;
	}

	public void setTemplateGearbox(String templateGearbox) {
		this.templateGearbox = templateGearbox;
	}

	public String getTemplateOutColor() {
		return templateOutColor;
	}

	public void setTemplateOutColor(String templateOutColor) {
		this.templateOutColor = templateOutColor;
	}

	public String getTemplateCarTypeId() {
		return templateCarTypeId;
	}

	public void setTemplateCarTypeId(String templateCarTypeId) {
		this.templateCarTypeId = templateCarTypeId;
	}

	public String getTemplateCarTypeName() {
		return templateCarTypeName;
	}

	public void setTemplateCarTypeName(String templateCarTypeName) {
		this.templateCarTypeName = templateCarTypeName;
	}

	public String getTemplateEnviron() {
		return templateEnviron;
	}

	public void setTemplateEnviron(String templateEnviron) {
		this.templateEnviron = templateEnviron;
	}

	public String getTemplateConfigId() {
		return templateConfigId;
	}

	public void setTemplateConfigId(String templateConfigId) {
		this.templateConfigId = templateConfigId;
	}

	public String getTemplateConfigName() {
		return templateConfigName;
	}

	public void setTemplateConfigName(String templateConfigName) {
		this.templateConfigName = templateConfigName;
	}

	public String getUserId() {
		return userId;
	}

	public void setUserId(String userId) {
		this.userId = userId;
	}

	public Date getTemplateCreateTime() {
		return templateCreateTime;
	}

	public void setTemplateCreateTime(Date templateCreateTime) {
		this.templateCreateTime = templateCreateTime;
	}

	public Date getTemplateUpdateTime() {
		return templateUpdateTime;
	}

	public void setTemplateUpdateTime(Date templateUpdateTime) {
		this.templateUpdateTime = templateUpdateTime;
	}
}
